import { Injectable } from '@nestjs/common';
import { Socket } from 'socket.io';

@Injectable()
export class SocketService {
  // async handleSendMessage(
  //   data: ClientToServerEvents['sendMessage'],
  //   client: Socket,
  //   getUserIdBySocket: (socket: Socket) => string | undefined,
  //   onlineUsers: Map<string, Set<Socket>>,
  // ) {
  //   const fromUserId = getUserIdBySocket(client);
  //   if (!fromUserId) return;
  //
  //   if (data.toIm_Id) {
  //     // 私聊：发给目标用户所有设备
  //     const targetSockets = onlineUsers.get(data.toIm_Id);
  //     if (targetSockets) {
  //       targetSockets.forEach(socket => {
  //         socket.emit('privateMessage', { fromUserId, ...data });
  //       });
  //     }
  //     return;
  //   }
  //
  //   // 群聊或其他类型消息逻辑可扩展
  //   if (data.roomId) {
  //     // 可选：存储消息、日志等
  //   }
  // }
  //
  // async handleJoinRoom(
  //   data: ClientToServerEvents['joinRoom'],
  //   client: Socket,
  // ) {
  //   if (data.roomId) {
  //     client.join(data.roomId);
  //   }
  // }
}
